//package com.example.utils.config;
//
//import java.util.LinkedHashMap;
//import java.util.Map;
//
//import org.apache.commons.collections4.map.HashedMap;
//import org.apache.shiro.spring.web.ShiroFilterFactoryBean;
//import org.apache.shiro.web.mgt.DefaultWebSecurityManager;
//import org.springframework.beans.factory.annotation.Qualifier;
//import org.springframework.context.annotation.Bean;
//import org.springframework.context.annotation.Configuration;
//
//@Configuration
//public class ShiroConfig {
//	
//	//ShiroFilterFactoryBean:3
//	@Bean
//	public ShiroFilterFactoryBean getShiroFilterFactoryBean(@Qualifier("securityManager") DefaultWebSecurityManager defaultWebSecurityManager) {
//		ShiroFilterFactoryBean bean = new ShiroFilterFactoryBean();
//		//设置安全管理器
//		bean.setSecurityManager(defaultWebSecurityManager);
//		//添加shiro的内置过滤器
//		/**
//		 * anon: 无需认证就可以访问
//		 * authc: 必须认证了才能访问
//		 * user: 必须拥有 记住我功能才能访问
//		 * perms: 拥有对某个资源的权限才能访问
//		 * role: 拥有某个角色权限才能访问
//		 */
//		Map<String, String> filterMap = new LinkedHashMap<String, String>();
//		filterMap.put("/user/add1", "authc");
//		filterMap.put("/user/update1", "authc");
//		bean.setFilterChainDefinitionMap(filterMap);
//		
//		//设置登录的请求
//		bean.setLoginUrl("/toLogin");
//		
//		return bean;
//	}
//	
//	//DefaultWebSecurityManager:2
//	@Bean(name="securityManager")
//	public DefaultWebSecurityManager getDefaultWebSecurityManager(@Qualifier("userRealm") UserRealm userRealm) {
//		DefaultWebSecurityManager securityManager = new DefaultWebSecurityManager();
//		//关联UserRealm
//		securityManager.setRealm(userRealm);
//		return securityManager;
//	}
//	
//	
//	
//	//创建 realm 对象，需要自定义类:1
//	@Bean(name="userRealm")
//	public UserRealm userRealm() {
//		return new UserRealm();
//	}
//}
